package asapi

import (
	"bytes"
)

// 默认配置
var defaultConfig = &Config{
	CacheSize: 100 * 1024 * 1024,
}

// Config 配置参数
type Config struct {
	ASURL           string // 授权服务URL
	ClientID        string // 客户端ID
	ClientSecret    string // 客户端秘钥
	ServiceIdentify string // 服务标识
	CacheSize       int    // 缓存大小(默认为100M)
}

// GetURL 获取请求的URL
func (c *Config) GetURL(router string) string {
	var buf bytes.Buffer
	if l := len(c.ASURL); c.ASURL[l-1] == '/' {
		c.ASURL = c.ASURL[:l-1]
	}
	buf.WriteString(c.ASURL)
	if l := len(router); l > 0 && router[0] != '/' {
		buf.WriteByte('/')
	}
	buf.WriteString(router)
	return buf.String()
}
